package com.ruoyi.project.system.mapper;

import com.ruoyi.project.system.domain.SMSRecord;
import com.ruoyi.project.system.domain.SmAutonomy;
import com.ruoyi.project.system.domain.SmQuery;
import com.ruoyi.project.system.domain.vo.*;
import org.apache.ibatis.annotations.Param;

import java.util.HashMap;
import java.util.List;

/**
 * 查询进件Mapper接口
 */
public interface SmQueryMapper {

    List<QueryPaysVo> teamQueryList(SmQuery smQuery);

    List<ProductQueryOrder> productQueryOrders(int id, Long userId, String kw);

    List<ProductQueryOrder> userRecentlyQueryOrder(List<Integer> ids, Long userId, String kw, Integer pageNum);

    List<TeamPayOrder> teamPayOrders(TeamPayOrder teamPayOrder);

    int insertSysTax(SysTax sysTax);

    int updateQueryTaxReportStatusOfTax(Long id, String queryTaxReportStatus);

    int updateQueryTaxReportOfTax(Long id, String queryTaxReport);

    HashMap<String, String> selectSysTaxByQueryId(Long id);

    List<Record> recordList(String mobile, String sign);

    /**
     * 查询查询进件
     *
     * @param id 查询进件主键
     * @return 查询进件
     */
    SmQuery selectSmQueryById(Integer id);

    /**
     * 查询查询进件列表
     *
     * @param queryVo 查询进件
     * @return 查询进件集合
     */
    List<QueryVo> selectSmQueryList(QueryVo queryVo);

    /**
     * 新增查询进件
     *
     * @param smQuery 查询进件
     * @return 结果
     */
    int insertSmQuery(SmQuery smQuery);

    /**
     * 修改查询进件
     *
     * @param smQuery 查询进件
     * @return 结果
     */
    int updateSmQuery(SmQuery smQuery);

    /**
     * 批量删除查询进件
     *
     * @param ids 需要删除的数据主键集合
     * @return 结果
     */
    int deleteSmQueryByIds(Integer[] ids);

    List<SmAutonomy> selectAutonomyList(SmAutonomy smAutonomy);

    int insertAutonomy(SmAutonomy smAutonomy);

    int selectAutonomyByUserId(Long userId);

    Integer updateAutonomy(SmAutonomy smAutonomy);

    Integer insertSMSRecord(SMSRecord smsRecord);

    List<SMSRecord> selectSMSRecordList(SMSRecord smsRecord);

}
